home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 010 / blit.arc / INTERSEC.C < prev    next >
Encoding:
C/C++ Source or Header  |  1985-05-23  |  842 b   |  33 lines

  1. /*
  2.  * name:         intersection
  3.  *
  4.  * description: calculate the intersection of the two rectangles r and s.
  5.  *
  6.  * synopsis:     intersection (r, ss, t)
  7.  *              struct rectangle    *r;
  8.  *              struct rectangle    *ss;
  9.  *              struct rectangle    *t;
  10.  *
  11.  * globals:      none.
  12.  *
  13.  * calls:        nothing.
  14.  *
  15.  * called by:    layerop  (layerop.c)
  16.  */
  17. #include "layers.h"
  18.  
  19. #define min(a, b) ((a) < (b) ? (a) : (b))
  20. #define max(a, b) ((a) > (b) ? (a) : (b))
  21.  
  22. intersection (r, ss, t)
  23. struct rectangle  *r;
  24. struct rectangle  *ss;
  25. struct rectangle  *t;
  26. {
  27.  
  28.     t -> origin.x = max ( r -> origin.x, ss -> origin.x);
  29.     t -> origin.y = max ( r -> origin.y, ss -> origin.y);
  30.     t -> corner.x = min ( r -> corner.x, ss -> corner.x);
  31.     t -> corner.y = min ( r -> corner.y, ss -> corner.y);
  32. }
  33.